﻿#include <learn/ais/ais_auxiliary_curve.h>

using namespace xi;
using namespace xi::ais;

AIS_AuxiliaryCurve::AIS_AuxiliaryCurve() : AIS_Curve(nullptr)
{
}

void AIS_AuxiliaryCurve::add_point(std::shared_ptr<AIS_AuxiliaryPoint> point)
{
    m_points.push_back(point);
}

std::vector<Vec3f> AIS_AuxiliaryCurve::sample(std::size_t num) const
{
    std::vector<Vec3f> result;
    for (auto &point : m_points)
        result.push_back(convert<float>(*point->point()));
    return result;
}

void AIS_AuxiliaryCurve::visit(AIS_MouseMsg *msg)
{
    // 移除 curve 的鼠标消息
}